SOSL (Salesforce Object Search Language) এর ব্যবহার

Computer Programming - এপেক্স (Apex) SOQL এবং SOSL (SOQL and SOSL) |
247
247

SOSL (Salesforce Object Search Language) Salesforce প্ল্যাটফর্মের একটি সার্চ ভাষা, যা একাধিক অবজেক্টে কী-ওয়ার্ড ভিত্তিক সার্চ করতে ব্যবহৃত হয়। SOSL অনেকটা সার্চ ইঞ্জিনের মতো কাজ করে এবং এটি মূলত কী-ওয়ার্ড দিয়ে বিভিন্ন অবজেক্টের এক বা একাধিক ফিল্ডে সার্চ করে সংশ্লিষ্ট রেকর্ডগুলো রিটার্ন করে।


SOSL এর মৌলিক ধারণা

SOSL সাধারণত FIND কিওয়ার্ড ব্যবহার করে সার্চ চালায়। SOSL কুয়েরিতে নির্দিষ্ট কী-ওয়ার্ড বা টার্ম দিয়ে একাধিক অবজেক্টের মধ্যে সার্চ করা যায়। এটি একাধিক অবজেক্ট এবং ফিল্ডে দ্রুত সার্চ করার জন্য খুবই কার্যকর, বিশেষ করে যখন নির্দিষ্ট অবজেক্ট বা ফিল্ডে দ্রুত কোনো তথ্য খুঁজে বের করতে হয়।


SOSL এর প্রধান বৈশিষ্ট্যসমূহ

  1. FIND কিওয়ার্ড: SOSL-এ FIND কিওয়ার্ড ব্যবহার করে সার্চ করা হয়।
  2. মাল্টি-অবজেক্ট সার্চ: SOSL-এ একাধিক অবজেক্টের বিভিন্ন ফিল্ডে একত্রে সার্চ চালানো যায়।
  3. IN ALL FIELDS: SOSL-এর মাধ্যমে অবজেক্টের সকল ফিল্ডে সার্চ করা সম্ভব।
  4. RETURNING ক্লজ: RETURNING ক্লজ ব্যবহার করে নির্দিষ্ট অবজেক্ট এবং ফিল্ড থেকে রেকর্ড রিটার্ন করা যায়।
  5. Wildcard Support: SOSL আংশিক কী-ওয়ার্ড সার্চ সাপোর্ট করে, যা ফিল্ডের মধ্যে মিল থাকা ডেটা খুঁজে বের করতে সহায়ক।

SOSL এর সাধারণ সিনট্যাক্স

FIND 'search_term' IN ALL FIELDS RETURNING ObjectName1(Field1, Field2), ObjectName2(Field1, Field2)
  • search_term: সার্চ টার্ম বা কী-ওয়ার্ড যা অনুসন্ধান করা হবে।
  • IN ALL FIELDS: অবজেক্টের সব ফিল্ডে সার্চ করার নির্দেশ।
  • RETURNING ObjectName(Field1, Field2): নির্দিষ্ট অবজেক্ট এবং ফিল্ডে সার্চ করে রেকর্ড রিটার্ন করা।

SOSL এর উদাহরণ

উদাহরণ ১: একটি নির্দিষ্ট কী-ওয়ার্ড দিয়ে সার্চ করা

নিচের উদাহরণে, Contact এবং Account অবজেক্টে 'John' নামক কী-ওয়ার্ডের ভিত্তিতে সার্চ করা হয়েছে।

List<List<SObject>> searchResults = [FIND 'John' IN ALL FIELDS RETURNING Contact(FirstName, LastName), Account(Name)];
  • এখানে Contact অবজেক্টের FirstName, LastName এবং Account অবজেক্টের Name ফিল্ডে 'John' কী-ওয়ার্ড দিয়ে সার্চ করা হয়েছে।

উদাহরণ ২: Wildcard Character ব্যবহার করে SOSL সার্চ

SOSL-এ '*' ব্যবহার করে আংশিক মিলে থাকা ডেটা সার্চ করা যায়। নিচের উদাহরণে, 'Tech' দিয়ে শুরু হওয়া সমস্ত রেকর্ড সার্চ করা হয়েছে।

List<List<SObject>> searchResults = [FIND 'Tech*' IN ALL FIELDS RETURNING Account(Name), Opportunity(Name)];
  • এখানে Account এবং Opportunity অবজেক্টের নামের মধ্যে 'Tech' দিয়ে শুরু হওয়া সমস্ত রেকর্ড সার্চ করা হয়েছে।

উদাহরণ ৩: স্পেসিফিক অবজেক্টের নির্দিষ্ট ফিল্ডে সার্চ করা

নিচে FIND কিওয়ার্ড ব্যবহার করে একটি নির্দিষ্ট কী-ওয়ার্ড দিয়ে Account অবজেক্টে সার্চ করা হয়েছে এবং শুধুমাত্র Name ফিল্ডে মিল থাকা রেকর্ডগুলো রিটার্ন করা হয়েছে।

List<List<SObject>> searchResults = [FIND 'Software' IN NAME FIELDS RETURNING Account(Name)];
  • এখানে Account অবজেক্টের শুধুমাত্র Name ফিল্ডে 'Software' কী-ওয়ার্ড দিয়ে সার্চ করা হয়েছে।

SOSL এবং SOQL এর মধ্যে পার্থক্য

বৈশিষ্ট্যSOSLSOQL
প্রধান উদ্দেশ্যএকাধিক অবজেক্টে কী-ওয়ার্ড ভিত্তিক সার্চনির্দিষ্ট অবজেক্টে ডেটা কুয়েরি
কিওয়ার্ডFINDSELECT
Aggregate Functionsসমর্থিত নয়সমর্থিত
Relationship Queryingসমর্থিত নয়Parent-Child ও Child-Parent সম্পর্কিত কুয়েরি সমর্থিত
Wildcard Searchসমর্থিতসমর্থিত নয়
ফিল্ড নির্দিষ্ট সার্চIN ALL FIELDS বা নির্দিষ্ট ফিল্ডে সার্চ করা যায়নির্দিষ্ট ফিল্ডের ডেটা সংগ্রহ করা যায়

SOSL এর ব্যবহার ক্ষেত্র

  1. মাল্টি-অবজেক্ট সার্চ: একাধিক অবজেক্টের বিভিন্ন ফিল্ডে একত্রে সার্চ করার প্রয়োজন হলে।
  2. কী-ওয়ার্ড ভিত্তিক সার্চ: কোনো নির্দিষ্ট কী-ওয়ার্ড দিয়ে ডেটাবেজে দ্রুত অনুসন্ধান চালাতে।
  3. রিপোর্ট এবং অ্যানালাইসিসে সহায়ক: ডেটার মধ্যে নির্দিষ্ট কী-ওয়ার্ড বা টার্মের উপস্থিতি যাচাই করতে।

SOSL এর সুবিধা

  • দ্রুত সার্চ কার্যক্রম: SOSL দ্রুত সার্চ করার জন্য অত্যন্ত কার্যকর, বিশেষ করে যখন একাধিক অবজেক্টের বিভিন্ন ফিল্ডে সার্চ করতে হয়।
  • মাল্টি-অবজেক্ট সার্চ সক্ষমতা: একাধিক অবজেক্টে একত্রে সার্চ করা যায়।
  • Wildcard Character Support: আংশিক বা প্রারম্ভিক কী-ওয়ার্ড দিয়ে সার্চ করা যায়, যা ডেটা খুঁজে পেতে সহায়ক।

উদাহরণ কোড: SOSL ব্যবহার করে সার্চ এবং প্রিন্ট করা

নিচের উদাহরণে, SOSL ব্যবহার করে Account এবং Contact অবজেক্টে নির্দিষ্ট কী-ওয়ার্ড দিয়ে সার্চ করা হয়েছে এবং ফলাফল প্রিন্ট করা হয়েছে।

public class SOSLExample {
    public static void searchRecords(String searchKeyword) {
        // SOSL কুয়েরি
        List<List<SObject>> searchResults = [FIND :searchKeyword IN ALL FIELDS RETURNING Account(Name), Contact(FirstName, LastName)];

        // Account রেকর্ড প্রিন্ট করা
        List<Account> accounts = (List<Account>) searchResults[0];
        for (Account acc : accounts) {
            System.debug('Account Name: ' + acc.Name);
        }

        // Contact রেকর্ড প্রিন্ট করা
        List<Contact> contacts = (List<Contact>) searchResults[1];
        for (Contact con : contacts) {
            System.debug('Contact Name: ' + con.FirstName + ' ' + con.LastName);
        }
    }
}
  • এখানে searchRecords মেথডের মাধ্যমে সার্চ টার্ম ইনপুট হিসেবে নিয়ে Account এবং Contact অবজেক্টে সার্চ চালানো হয়েছে এবং প্রাপ্ত রেকর্ডগুলোকে প্রিন্ট করা হয়েছে।

সারসংক্ষেপ:

SOSL হলো Salesforce-এর একটি সার্চ ভাষা, যা একাধিক অবজেক্টে কী-ওয়ার্ড ভিত্তিক সার্চ চালায়। SOSL বিভিন্ন অবজেক্টের বিভিন্ন ফিল্ডে দ্রুত সার্চ করার জন্য উপযুক্ত এবং এটি Salesforce প্ল্যাটফর্মে মাল্টি-অবজেক্ট সার্চ এবং দ্রুত অনুসন্ধান কার্যক্রম সহজ করে তোলে।

common.content_added_by
টপ রেটেড অ্যাপ

স্যাট অ্যাকাডেমী অ্যাপ

আমাদের অল-ইন-ওয়ান মোবাইল অ্যাপের মাধ্যমে সীমাহীন শেখার সুযোগ উপভোগ করুন।

ভিডিও
লাইভ ক্লাস
এক্সাম
ডাউনলোড করুন
Promotion